package com.keensense.vcm.model;

import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import java.util.List;

/**
 * @author lanjian
 * @date 2020/8/3
 */
@XmlRootElement(name = "request")
public class DeleteSubscriptionRequest {

    private DeleteSubscriptionRequest() {
    }

    public DeleteSubscriptionRequest(Integer dataType) {
        this.dataType = dataType;
    }

    private String taskId;

    private String suspectId;

    private Camera camera;

    private Integer dataType;

    private Integer cancelType;

    @XmlElement
    public String getTaskId() {
        return taskId;
    }

    public void setTaskId(String taskId) {
        this.taskId = taskId;
    }

    @XmlElement
    public String getSuspectId() {
        return suspectId;
    }

    public void setSuspectId(String suspectId) {
        this.suspectId = suspectId;
    }

    @XmlElement
    public Camera getCamera() {
        return camera;
    }

    public void setCamera(Camera camera) {
        this.camera = camera;
    }

    @XmlElement
    public Integer getDataType() {
        return dataType;
    }

    public void setDataType(Integer dataType) {
        this.dataType = dataType;
    }

    @XmlElement
    public Integer getCancelType() {
        return cancelType;
    }

    public void setCancelType(Integer cancelType) {
        this.cancelType = cancelType;
    }

    public static class Camera {

        public Camera(List<String> cameraSns, Integer intelligentType) {
            this.cameraSns = cameraSns;
            this.intelligentType = intelligentType;
        }

        private List<String> cameraSns;

        private Integer intelligentType;

        @XmlElementWrapper(name = "cameraSns")
        @XmlElement(name = "cameraSn")
        public List<String> getCameraSns() {
            return cameraSns;
        }

        public void setCameraSns(List<String> cameraSns) {
            this.cameraSns = cameraSns;
        }


        @XmlElement
        public Integer getIntelligentType() {
            return intelligentType;
        }

        public void setIntelligentType(Integer intelligentType) {
            this.intelligentType = intelligentType;
        }
    }
}
